package com.schezhi.link.auth.properties;

import com.schezhi.link.auth.constant.AuthConstant;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

/**
 * @Author: JiaLing.Fan
 * @Date: 2022/11/29 19:04
 * @Description:
 */
@Data
@Configuration
@ConfigurationProperties(prefix = AuthConstant.SESSION_PREFIX)
public class SessionProperties {

    /**
     *  会话类型, 这里会话类型是指 学生端还是教师端 或者是运营端
     *  staff/member
     */
    private String type;

    /**
     * 会话模式  是本地内存形/还是远程形式
     * local : 本地模式下, 默认采用JWT校验, 适合单节点项目
     * remote：远程模式,默认采用redis 存储会话数据,JWT只做签名处理,不做校验处理。
     */
    private String mode;

    /**
     * 签名:在本地模式下存在意义,远程模式下签名没有任何意义
     */
    private String sign;


    /**
     * 有效期分钟数: 在本地模式下会影响 JWT的时间。 远程模式下是会话的过期时间
     */
    private int expires;



    private String prefix;

    private String common;

}
